Tracing of User Programs for Incremental Replay
نویسنده
چکیده
User programs may be long-running and have arbitrarily complex interactions with their environment, and thus reproducing bugs by repeated re-execution may be impractical or impossible. To facilitate the debugging process, we hope to produce a tool which allows the user to eeciently trace the execution of a given program, and then exactly replay any interval of the traced execution. In this paper we show how the technique of tracing unique-spanning reads can be further reened to eeciently trace system calls during program execution using a new state machine to detect and trace reads following system calls. We also discuss how interrupts can be traced, and how the trace information can be used to incrementally replay a program execution, including system calls executed by the program and interrupts which occurred during the original execution.
منابع مشابه
Rdb: a System for Incremental Replay Debugging Rdb: a System for Incremental Replay Debugging
To facilitate the process of tracking program bug symptoms to their causes while debugging, we have developed a robust architecture for program tracing and replay. rdb is a framework for program instrumentation which modiies user programs to perform complete and highly eecient tracing of an execution including interactions with the operating system and asynchronous interrupts. We have developed...
متن کاملThe Performance of Two Tracing and Replay Algorithms for Message-Passing Parallel Programs
Debugging parallel message-passing programs is complicated by the non-determinism that is inherent in those programs. Cyclical debugging, which is a proven method for sequential programs, often fails when debugging parallel programs because different executions of the same program may exhibit different behaviors due to non-determinism. Some approaches have been studied to remedy this problem. W...
متن کاملTrace Size vs. Parallelism in Trace-and-Replay Debugging of Shared-Memory Programs
Execution replay is a debugging strategy where a program is run over and over on an input that manifests bugs. For explicitly parallel shared-memory programs, execution replay requires support of special tools — because these programs can be nondeterministic, their executions can differ from run to run on the same input. For such programs, executions must be traced before they can be replayed f...
متن کاملEfficient Tracing for On-the-Fly Space-Time Displays in a Debugger for Message Passing Programs
In this work we describe the implementation of a practical mechanism for collecting and displaying trace information in a debugger for message passing programs. We introduce a trace format that is highly compressible while still providing information adequate for debugging purposes. We make the mechanism convenient for users to access by incorporating the trace collection in a set of wrappers f...
متن کاملTORNADO: A Novel Input Replay Tool
This paper presents TORNADO, a unique input replay tool based on system call replay. It is capable of tracing program executions with an acceptable overhead of less than a factor 2. It is fully operational for the Linux operating system. The tool requires no instrumentation, recompilation or relinking of the applications. This paper also presents a new technique capable of tracing write operati...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1996